Artifact: Interface
Purpose
An interface declares a set of operations, including their signatures and parameters, that are use to specify the services offered by a classifier model element (e.g. a class, component or subsystem). Properties
Timing
Interfaces are created in the elaboration phase, and define the important 'seams' in the system. All interfaces are architecturally significant. Responsibility
An Architect is responsible for the integrity of the Interface, ensuring that:
Tailoring
Interfaces are typically used in conjunction with either Artifact:
Design Subsystems or Artifact: Components; it is
usually not necessary or desirable to use interfaces in conjunction with Artifact:
Design Classes, where using public operations is usually sufficient.
Interfaces are typically used in cases where there is a need to define the
behavior (in the form of operation signatures) independently from the elements
which realize those operations. This implies the existence of larger-grained
abstraction of behavior (in the case of design subsystems) or replaceability (in
the case of either design subsystems or executable components). For projects
which do not have these attributes, interfaces can be omitted. |
Rational Unified
Process |